package FilesManagers;

import java.io.IOException;
import java.util.regex.Pattern;

public class LocalUrlManager extends UrlManager{
	
	
	private void encontrarCodificacion(String html) throws CantOpenFileException{
		
		FileManager fm = new FileManager();
		fm.cargarArchivo(html);
		try {
			String linea="";
			while((linea=fm.obtenerSiguienteLinea())!=null){
				if(Pattern.matches(linea.toLowerCase(),".*</head>.*"))break;
				String codifAux =obtenerCodificacion(linea);
				if(!codifAux.equals("")){
					codifAux=codifAux.replaceAll("\".*", "");
					//codifAux=codifAux.replace(">", "");
					setCodificacion(codifAux);
					return ;
					
				}
			}
			setCodificacion("");
		} catch (NoMoreLinesException e) {
			// TODO Bloque catch generado automáticamente
			setCodificacion("");
			//e.printStackTrace();
		}
		setCodificacion("");
		
	}
	
	
	public void copiar(String urlBuscada,String nombreDestino) throws CantOpenFileException
	{
		try {
			FileManager.copiar(urlBuscada, nombreDestino);
			this.encontrarCodificacion(nombreDestino);
		} catch (IOException e) {
			// TODO Bloque catch generado automáticamente
			//e.printStackTrace();
			//System.out.println("No se pudo copiar la url desde "+urlBuscada+" hacia "+nombreDestino);
			throw new CantOpenFileException("No se pudo copiar la url desde "+urlBuscada+" hacia "+nombreDestino);
		}
	}

}
